package cn.terminus.data.customer.contractselldefyloaninfo.mapper;

import cn.terminus.common.customer.bean.contractselldefyloaninfo.dto.ContractSellDefyLoanInfoNewDto;
import cn.terminus.common.customer.bean.contractselldefyloaninfo.dto.ContractSellDefyLoanInfoEditDto;
import cn.terminus.common.customer.bean.contractselldefyloaninfo.dto.ContractSellDefyLoanInfoQueryDto;
import cn.terminus.common.customer.bean.contractselldefyloaninfo.dto.ContractSellDefyLoanInfoDeleteDto;
import cn.terminus.common.customer.bean.contractselldefyloaninfo.dto.ContractSellDefyLoanInfoGetsDto;
import cn.terminus.common.customer.bean.contractselldefyloaninfo.dto.ContractSellDefyLoanInfoResultDto;

import java.util.List;

/**
 * 贷款违约(ContractSellDefyLoanInfo)表服务接口
 *
 * @author makejava
 * @since 2021-07-21 11:18:12
 */
public interface ContractSellDefyLoanInfoMapper {

    /**
     * 新增
     *
     * @param dto
     * @return
     */
    Integer add(ContractSellDefyLoanInfoNewDto dto);

    /**
     * 更新
     *
     * @param dto
     * @return
     */
    Integer update(ContractSellDefyLoanInfoEditDto dto);


    /**
     * gets
     *
     * @param dto
     * @return
     */
    List<ContractSellDefyLoanInfoResultDto> gets(ContractSellDefyLoanInfoGetsDto dto);

    /**
     * 删除
     *
     * @param dto
     * @return
     */
    Integer delete(ContractSellDefyLoanInfoDeleteDto dto);

    /**
     * 查询
     *
     * @param dto
     * @return
     */
    List<ContractSellDefyLoanInfoResultDto> query(ContractSellDefyLoanInfoQueryDto dto);

    Integer deleteWithContractId(Long contractId);
}
